1. Field
Embodiments of the invention relate to creating and deleting baselines over indexed, versioned data.
2. Description of the Related Art
Historical views, which are also referred to as “baselines,” are created for a data store that holds indexed and versioned data. That is, the data store holds data elements. The data elements may be indexed. Also, different versions of the data elements may be stored. A baseline may be described as a named configuration of specific data element revisions in the data store that represents the state of the data store at a particular point in time (similar to a snapshot of the data).
First, although data elements in the data store are indexed, many conventional systems do not include the index data (also referred to as index elements) in the baseline. Thus, conventional systems can identify the versions of data elements in a baseline, but, because conventional systems do not preserve the index properties, the contents of the baseline are not available for query or search.
Second, to support query or search, come conventional systems may maintain the index properties corresponding to every version of a data element, whether or not that data element version participates in a baseline.
Thus the first and second solutions are unsatisfactory. The issue with the first solution is that users have a hard time answering common questions, such as “find all high priority items, for customer X, in baseline Y”. In the case of the second solution, the index data is available for query, but a huge amount of the storage is used by data that is irrelevant and not useful in supporting user scenarios. In cases in which the second solution is used, the size of the resulting index degrades the performance of common operations.
Additionally some conventional solutions require that a database be “locked” while a baseline is created. That is, no further edits can be made to data elements in the data store while the baseline is created to prevent the inclusion of newer states that were created after the baseline was requested.
Thus, there is a need for baselines over indexed, versioned data.